'''
	简单选择排序（又名：直接选择排序）
	时间复杂度：最好：O(n) 平均：O(n^2) 最坏：O(n^2)
	空间复杂度：O(1)
	稳定性：不稳定
	基本思想：每次遍历，只选择最小（大）的值进行交换，这样一次遍历，只需要进行一次交换
		1.遍历一次，记录最值元素的位置，遍历结束后，将此最值元素调整到合适的位置
'''
from tool import arr, swp
def SelectSort(arr):
	i = 0
	while i < len(arr):
		index = i
		j = i + 1
		while j < len(arr):
			if arr[index] > arr[j]:
				index = j
			j = j + 1
		if index != i:
			swp(arr, index, i)
		i = i + 1
	return arr


if __name__ == '__main__':
	arr = SelectSort(arr)
	print(arr)